home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The 640 MEG Shareware Studio 2
/
The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO
/
comm
/
cs_mac06.zip
/
LOGON.MAC
< prev
next >
Wrap
Text File
|
1992-08-23
|
14KB
|
351 lines
┌────────────────────────────────┐
│ Chuck Seyboldt's COMMO Macro │ CS-MAC06:LOGON.MAC
└────────────────────────────────┘
Contents: Your Voice and data numbers, birthdate, etc.
Generic logon routine (:glr)
Test for ACTION (and call to ACTION.MAC)
Test for .REP
Called from: TABLE.MAC
Control passes to: ACTION.MAC,action (if ACTION.%abbr exists)
COMMO.MAC,aln (multi-dialer routine)
* Edit lines with a "!" in column 1.
* This file contains a stand-alone logon macro.
* It is designed to get you quickest to the "Main BBS Command?"
* prompt. BBSware specific prompts are delivered from TABLE.MAC.
* After logon, a MAILRUN is made. If the Commo variable BBSID is
* empty, control passes back to COMMO.MAC.
* This works for PCBoards, for the RBBS run by Jim Goodenough,
* Directory Assistance (1,707 538-8710), for Shad Muegge's
* BABBLE BBS (1,707 538-1507), for Mark Turner's ESCape running
* GAP software (1,714 698-9568), for Mike Martell's Wolf's Moon
* running Spitfire (1,207 772-9093), and possibly for Wildcat!
* Always adding more prompts to accomodate more BBS types.
* In general, turn any BBS HOTKEY option to OFF.
┌─────────────────────────────┐
│ Standard Online Responses │ (For the Generic Logon Routine)
└─────────────────────────────┘
* Responses to common logging-on prompts.
* Put in *YOUR* name. Notice that I have a different response
* to the "First name?" prompt for the BBS called Directory Assistance.
{:retu} {:esc} {macl commo.mac}
{:lof} {comp abbr,di} {ifco lof1} ;If BBS=DIRASNT, send TURBO login
{send ~%name%|} {retu} ; otherwise, just send name.
{:lof1} {send %name %_pas !main|}
{alarm 1} {retu}
!{:lov} {send ~2078929168|} {retu} ;Voice Phone Number verification
!{:lod} {send ~2077614782|} {retu} ;Data Phone Number verification
!{:lob} {send ~042355|} {retu} ;Birthday verification
!{:loq} {send ~y q ns|} {retu} ;choose ANSI colors (Y/n)
{:|} {send ~|} {retu}
{:c|} {send ~c|} {retu}
{:g|} {send ~g|} {retu}
{:n|} {send ~n|} {retu}
{:q|} {send ~q|} {retu}
{:s|} {send ~s|} {retu}
{:y|} {send ~y|} {retu}
{:z|} {send ~z|} {retu}
{:0|} {send ~0|} {retu}
{:los} {send ~ } {retu} ;this is how to send "SpaceBar"
{:loe} {send ~~^[^[} {retu} ;this is sending two "Esc" presses
{:pas|} {send %_pas|} {retu} ;this sends your password
┌─────────────────────────┐
│ Generic Logon Routine │
└─────────────────────────┘
* This logon macro works for times you DON'T want to
* make a mail run. It is designed to get you quickest to the
* "Main BBS Command?" prompt.
* It is necessary that this routine be reached via TABLE.MAC
* since several BBS prompts are set there.
{:glr}
disp ,,,Logging on Now^m^j^j
spdc n ;Blind display (for the bold)
{sete-p0 alm}
{ifca ,alm} ;Skip routine if OFFline
{setv nodl} {setv count} ;set some working variables
{capture n} ;turnoff capture if open
{setlook 60,bye,10,|}
{push} ;push + pops ≈ call
{golook n|,A>?} ;just say 'no' RBBS prompt
{golook n|,change?} ;PCBoard "Language" prompt
{golook loq,r)=no?} ;PCBoard "Graphics" prompt
{golook loq, yes :} ;GAP "Graphics" prompt
{golook y|,orrect?} ;send 'y' when caller ID is asked
{golook y|,? [y/N]} ;Spitfire "Graphics" prompt
{golook loe, twice} ;send Escape twice (Front End)
{golook loe, (ESC)} ;send Escape twice (Binkley)
{golook onl,mmand?} ;Logged on via "quick" RBBS logon
{golook lof,%nam_pmt} ;send name (Prompt from TABLE.MAC)
{lookfor Password} ;Logon macro now has two "lookfors"
{pops} ; Why? To accomodate more golooks.
{pause 1}
{call pas|} ;send password
{push}
{setlook 60,bye,15,n|} ;Start of "Logon, Part II"
{golook %bypass1} ;These BBSware specific 'pause-
{golook %bypass2} ; avoiding-responses' are set in
{golook %bypass3} ; TABLE.MAC
{golo n|,More?} ;just say 'no' to "More?"
{golo n|,inue?} ;just say 'no' to "Continue?"
{golo n|,=yes?} ;just say 'no' to "mail scan"
{golo lod,TA ph} ;More Wildcat! prompts <sigh>
{golo n|,menu? [} ;No to Wildcat! bulletin menu
{golo c|,se- [C]} ;[C]ontinue to -pause- prompt
{golook n|,N)?} ;just say 'no' RBBS prompt
{golook n|,[Y/n]?} ;just say 'no' to "mail scan"
{golook pas|,Wrong} ;resend password if necessary
{lookfor %bbs_pmt} ;Generic Logon Complete
{:onl} {spdc y} {pops} ;All set. Logged-ON.
┌─────────────────────────┐
│ Call ACTION Processor │
└─────────────────────────┘
{ifex %_hom%action.%abbr%,act,noact} ;CALL "ACTION processor"
{:act} {alar 1} {paus 1} {disp ,,,^j^j}
{disp ,18,1E,▌ 'S' to skip ACTION ■ Any other key continues ▐}
{disp ,,,^m}
{setg 15,doact,n} ;if response is <CR>, do!
{gets-h resp,1,doact} ;using Commo for timed branch
{comp resp,s} {ifco noact} ;15 second delay, default=do!
{:doact} {macl action.mac,action} ;ACTION.MAC Returns to :noact
┌─────────────────────────┐
│ MailRun Routine Start │
└─────────────────────────┘
{:noact}{comp bbsid} ;Check %bbsid variable
{ifco retu} ;If empty, quit macro here
{ifca ,retu} ;If Offline, quit here
┌───────────────────┐
│ MailRun Routine │
└───────────────────┘
* Checking for a .REP file. If a REP exists, you are offered
* the option to only upload those replies. But, the default action
* is to get a QWK. This way, unattended sessions fetch a .QWK
* Or, by putting a SKIP.NL file in your MAILDIR, you can skip the
* attempt to download mail from the "NLBBS".
{ifex %repdr\%bbsid.rep,ask,d_l} ;GOTO mailrun routines
{:ask} {comp skip,%abbr} {ifco n_u}
{comp skip,y} {ifco n_u}
{alar 1} {paus 1} {disp ,,,^j^j}
{disp ,18,1E,▌ (C)ontinue mail d/l NOW ■ 'S' to skip d/l ▐}
{disp ,,,^m}
{setg 15,d_l,n}{gets-h resp,1,d_l} ;using Commo for timed branch
{comp resp,c} {ifco d_l} ;15 second delay, default=d/l
{comp resp, } {ifco d_l}
{comp resp,s} {ifco n_u}
{:n_u} {setv nodl,y} ;flag set to skip mail d/l
┌───────────────────────────────┐
│ Get to the Mail Door Prompt │
└───────────────────────────────┘
{:d_l} {ifca ,retu} ;return to COMMO.MAC if offline
{send ~~%dorno}
{setl 60,bye,30,%yes}
{push}
{golo |,inue>} ;for Jimmer Startup
{golo |,inue:} ;for JetMail Startup
{golo |,inue?} ;for MarkMail Startup
{golo y|,inue...} ;for QM4 prompt
{golo ndl,sorry,} ;for T.A.G. unable to enter door
{look %md_pmt} ;from TABLE.MAC prompt table
┌─────────────────┐
│ Upload a .REP │
└─────────────────┘
* If a .REP exists, it is sent before any attempt is made to download.
* This uses DSZ's -u option to erase the .REP after a successful upload.
* Hence one reason to register your copy of DSZ <g>.
{:qul} {pops}
{ifca ,retu}
{ifex %repdr\%bbsid.rep,,nup}
{send ~~u|}
{setl 30,bye,,}
{call ulrep-%mprot} ;%mprot selected in COMMO.MAC
{setl 60,bye,15,|}
{push}
{golo |,inue?} ;for MarkMail
{golo y|,inue...} ;for QM4 prompt
{look %md_pmt}
┌───────────────────┐
│ Download a .QWK │
└───────────────────┘
* The ":nup" section would be skipped if you decided to skip .QWK
* downloading in the "Mailrun Routine Start, :ask" section.
{:nup} {pops}
{comp nodl,y} {ifco byz} ;Skip d/l if %nodl=y
{send ~~~d|} ;Otherwise, scan messages
{setl 300,bye,90,%yes}
{golo ndl,%mt_qwk} ;eMpTy .QWK message (from TABLE.MAC)
{golo %md_brnch} ;Branch, refer to MAILware TABLE.MAC
{look Message Count}
{goto qdl}
┌──────────────────┐
│ Count Messages │ ;Comments relate to MarkMail2
└──────────────────┘
* This section will skip the RENQWK and any attempt to download if
* MarkMail scans less than 30 messages for your .QWK packet.
{:mc2} {setg ,,l,^m}
{gets count,15} ;get total message count (w/ANSI)
{subs count,-4,4,%count} ;take last 4 characters (total)
{look sages: } ;MM2 personal message count
{:mc1} {gets person,15} ;get personal message count (w/ANSI)
{subs person,-4,4,%person} ;take last 4 characters (personal)
{look %xfer_pmt}
{comp person,1} ;check for personal messages
{ifco-GE qdl} ; if any, do download ... but ...
{comp count,30} ;if less than 30 total messages,
{ifco-L ndl} ; then skip download
┌────────────────────────────────┐
│ .QWK rename and DSZ Download │
└────────────────────────────────┘
* Renaming is much faster with one call to a batch file than several
* COMMO calls to command.com. Passing these variables from COMMO.MAC
* to renqwk.bat. %1 = %maildir : %2 = %nodeid : %3 = %abbr
┌───────────────── renqwk.bat ─┐ <-- cut here --
│ @echo off │
│ ctty nul │
│ │
│ del %1\%3__5.qwk │
│ ren %1\%3__4.qwk %3__5.qwk │
│ ren %1\%3__3.qwk %3__4.qwk │
│ ren %1\%3__2.qwk %3__3.qwk │
│ ren %1\%3__1.qwk %3__2.qwk │
│ ren %1\%2.qwk %3__1.qwk │
│ │
│ ctty con │
└────────────────────────────────┘ <-- cut here --
{:qdl} {ifex %qwkdr\%bbsid.qwk,,gonow} ;check for .QWK before rename
{exec-n %_hom%renqwk %qwkdr %bbsid %abbr} ;.QWKfile rename
{:gonow}{send ~~%yes}
{call dlqwk-%mprot}
{:ndl} {setl 30,bye,5,%no}
{push}
{comp md_pmt,--->} ;DCQwk does not have a logoff
{ifco ,notag} ; from door facility. This
{setv md_pmt,%bbs_pmt} ; returns to BBS for logoff.
{golo q|,--->}
{:notag}{golo y|,inue...} ;for QM4 "continue" prompt
{golo |,inue?} ;for MarkMail
{look %md_pmt} ;from MailDoor prompt table
┌──────────────────────┐
│ LogOFF or Stay on? │
└──────────────────────┘
* Again a choice. Default is to end the connection, but you may
* stay ONLINE if you wish. The macro is setup to open a capture
* file if you choose to stay online.
{:byz} {pops}
{paus 1} {alarm 1} {parm ,,,,0} {disp ,,,^j^j}
{disp ,18,1E,▌ 'G' to LogOFF NOW ■ SpaceBar to stay ON ▐}
{disp ,,,^m}
{setg 10,bye,n} {gets-h resp,1,bye};using Commo for timed branch
{comp resp,g} {ifco bye} ;10 second delay, default=bye
{comp resp, } {ifco sta}
{:sta} {clea}
{setv bbsid}
{macl commo.mac,chm} ;commo.mac:chm opens capture file
{:bye} {send %bye%%rs}
{setl 10,,,}
{push}
{golo loe,<esc>} ;stifle host delays
{golo y|, log off }
{golo n|, comment }
{look NO CARRIER^m^j} ;comes from modem
{pops}
{:bya} {hang y}
{setv lastcall,%bbsid} ;save lastcall info
{setv bbsid} {setv dorno} ;and recycle variables
{setv nodl}
{macl commo.mac,%rflag} ;Dial next marked BBS
{:alm} {macl commo.mac,ale} ;if ESCAPE is used to exit
; this macro routine
┌──────────────────────────────────────┐
│ .QWK and .REP protocol subroutines │
└──────────────────────────────────────┘
{:ulrep-z} {:ulrep-} ;default protocol is "Z"
{look ^xB01}
{exec-n %dszprog port %_por ha bo sz -mu %repdr\%bbsid.rep}
{retu}
{:ulrep-y}
{paus 10}
{symo-k %repdr\%bbsid.rep}
{ifer 1,,delrep}
{retu}
{:ulrep-x}
{paus 10}
{sxmo-y %repdr\%bbsid.rep}
{ifer 1,,delrep}
{retu}
{:delrep}
{exec-n del %repdr\%bbsid.rep}
{retu}
{:dlqwk-z} {:dlqwk-} ;default protocol is "Z"
{push}
{golo g|,<G> to start} ;for DCQwk/TAG
{look ^xB00}
{pops}
{exec-N %dszprog port %_por ha bo rz -mr %qwkdr}
{retu}
{:dlqwk-y}
{paus 10}
{send g}
{rymo-y %qwkdr} ;overwrite exiting files
{retu}
{:dlqwk-x}
{paus 10}
{send g}
{rxmo-y %qwkdr\%bbsid.qwk}
{retu}